home *** CD-ROM | disk | FTP | other *** search
Text File | 1997-06-13 | 3.0 KB | 112 lines | [TEXT/CWIE] |
- // ===========================================================================
- // LTextEdit.h ©1994-1996 Metrowerks Inc. All rights reserved.
- // ===========================================================================
-
- #ifndef _H_LStyledTextEdit
- #define _H_LStyledTextEdit
- #pragma once
-
- #if defined(__CFM68K__) && !defined(__USING_STATIC_LIBS__)
- #pragma import on
- #endif
-
- #include <LView.h>
- #include <LCommander.h>
- #include <LPeriodical.h>
-
- #ifndef __TEXTEDIT__
- #include <TextEdit.h>
- #endif
-
- /*
- enum {
- textAttr_MultiStyle = 0x8000,
- textAttr_Editable = 0x4000,
- textAttr_Selectable = 0x2000,
- textAttr_WordWrap = 0x1000
- };
- */
- typedef struct SStyledTextEditUndo {
- Handle textH;
- Int16 selStart;
- Int16 selEnd;
- } SStyledTextEditUndo, **SStyledTextEditUndoH;
-
-
- class LStyledTextEdit : public LView,
- public LCommander,
- public LPeriodical {
- public:
- enum { class_ID = 'stxt' };
- static LStyledTextEdit* CreateStyledTextEditStream(LStream *inStream);
-
- LStyledTextEdit();
- LStyledTextEdit(const SPaneInfo &inPaneInfo,
- const SViewInfo &inViewInfo,
- Uint16 inTextAttributes,
- ResIDT inTextTraitsID);
- LStyledTextEdit(LStream *inStream);
- virtual ~LStyledTextEdit();
-
- virtual void SetTextHandle(Handle inTextH, TEStyleHandle inStylH = NULL );
- virtual void SetTextPtr(Ptr inTextP, Int32 inTextLen);
- virtual Handle GetTextHandle();
- virtual StScrpHandle GetStyleScrapHandle();
- TEHandle GetMacTEH();
-
- virtual void SetTextTraitsID(ResIDT inTextTraitsID);
- Boolean HasAttribute(Uint16 inAttribute);
-
- virtual Boolean ObeyCommand(CommandT inCommand, void *ioParam);
- virtual void FindCommandStatus(CommandT inCommand,
- Boolean &outEnabled, Boolean &outUsesMark,
- Char16 &outMark, Str255 outName);
- virtual void SpendTime(const EventRecord &inMacEvent);
-
- virtual Boolean HandleKeyPress(const EventRecord& inKeyEvent);
-
- virtual void ResizeFrameBy(Int16 inWidthDelta, Int16 inHeightDelta,
- Boolean inRefresh);
-
- virtual void MoveBy(Int32 inHorizDelta, Int32 inVertDelta,
- Boolean inRefresh);
- virtual void ScrollImageBy(Int32 inLeftDelta, Int32 inTopDelta,
- Boolean inRefresh);
-
- virtual Boolean FocusDraw();
- virtual void SelectAll();
- void SelectNone();
- virtual void UserChangedText();
- virtual void AdjustImageToText();
-
- virtual void SavePlace(LStream *outPlace);
- virtual void RestorePlace(LStream *inPlace);
-
- protected:
- TEHandle mTextEditH;
- ResIDT mTextTraitsID;
- Uint16 mTextAttributes;
-
- virtual void DrawSelf();
- virtual void HideSelf();
-
- virtual void ClickSelf(const SMouseDownEvent &inMouseDown);
- virtual void AdjustCursorSelf(Point inPortPt,
- const EventRecord &inMacEvent);
-
- virtual void BeTarget();
- virtual void DontBeTarget();
-
- virtual void AlignTextEditRects();
-
- virtual SStyledTextEditUndoH SaveStateForUndo();
-
- private:
- void InitStyledTextEdit(ResIDT inTextTraitsID);
- };
-
- #if defined(__CFM68K__) && !defined(__USING_STATIC_LIBS__)
- #pragma import reset
- #endif
-
- #endif